package com.itheima.springboottlias.mapper;


import Pojo.Emp;
import Pojo.EmpQueryParam;
import Pojo.JobCountItem;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;
import java.util.Map;

@Mapper
public interface EmpMapper {



    Page<Emp> selectByCondition(EmpQueryParam queryParam);

    //查询所有员工
    @Select("select * from emp")
    List<Emp> queryAllEmp();
    //添加员工
    void addEmp(Emp emp);
    //删除员工
    void deleteByIds(List<Integer> ids);
    //查询员工详情（方式一）
//    Emp queryById(Integer id);
    //查询员工详情（方式二）
    Emp queryByIdAndExprs(Integer id);
    //修改员工
    void updateEmp(Emp emp);
    //查询员工所属部门人数
    int queryByDeptId(Integer id);
    //员工岗位统计
    List<JobCountItem> empJobCount();
    //员工性别统计
    @MapKey("name")
    List<Map> empGenderCount();
    //登录验证
    Emp checkLogin(Emp emp);

    /*
    * Service 分层插件原理
    *
    *
    *
    * */
}
